package com.tubang.logistics.vo;

import com.baomidou.mybatisplus.annotations.TableField;
import com.tubang.common.vo.BaseVo;
import com.tubang.component.entity.AddressEntity;
import com.tubang.logistics.entity.GoodsEntity;
import com.tubang.logistics.entity.ShipperOrderEntity;
import com.tubang.logistics.entity.TransportEntity;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 订单详情
 */
@SuppressWarnings("serial")
public class OrderInfoVo extends BaseVo {

    /**
     * 运单 订单 编号
     */
    private String num;

    /**
     * 货源基本信息
     */
    private GoodsBaseVo goodsBaseVo;


    /**
     * 货源商品列
     */
    private List<GoodsInfoVo> goodsInfoVoS;


    /**
     * 发货人
     */
    private AddressEntity addressFrom;

    /**
     * 收货人
     */
    private AddressEntity addresTo;


    /**
     * 运输备注
     */
    private String note;

    /**
     * 运费 元/吨
     */
    private Double carriage;
    /**
     * 运输总费用
     */
    private Double amount;

    /**
     * 成交单价
     */
    private Double carriageDeal;


    /**
     * 成交总价
     */
    private Double amountDeal;

    /**
     * 承运商id
     */
    @TableField("carrier_id")
    private String carrierId;


    /**
     * 承运商id
     */
    @TableField("carrier_type")
    private String carrierType;


    /**
     * 承运商 名称
     */
    @TableField("carrier_name")
    private String carrierName;
    /**
     * 承运商手机号
     */
    @TableField("carrier_mobile")
    private String carrierMobile;


    /**
     * 车辆类型
     */
    private String containerType;
    /**
     * 车辆尺寸
     */
    private Double containerSize;

    /**
     * 计划提货时间
     */
    private Date takePlanDate;

    /**
     * 计划卸货时间
     */
    private Date unloadPlanDate;

    /**
     * 计划卸货时间
     */
    private String unloadPlanDateStr;
    /**
     * 计划提货时间
     */
    private String takePlanDateStr;

    /**
     * 订单里的运单列表
     */
    private List<OrderbillSimpleVo> orderbillSimpleVos=new ArrayList<OrderbillSimpleVo>();



    public String getNum() {
        return num;
    }

    public void setNum(String num) {
        this.num = num;
    }

    public GoodsBaseVo getGoodsBaseVo() {
        return goodsBaseVo;
    }

    public void setGoodsBaseVo(GoodsBaseVo goodsBaseVo) {
        this.goodsBaseVo = goodsBaseVo;
    }

    public List<GoodsInfoVo> getGoodsInfoVoS() {
        return goodsInfoVoS;
    }

    public void setGoodsInfoVoS(List<GoodsInfoVo> goodsInfoVoS) {
        this.goodsInfoVoS = goodsInfoVoS;
    }

    public AddressEntity getAddressFrom() {
        return addressFrom;
    }

    public void setAddressFrom(AddressEntity addressFrom) {
        this.addressFrom = addressFrom;
    }

    public AddressEntity getAddresTo() {
        return addresTo;
    }

    public void setAddresTo(AddressEntity addresTo) {
        this.addresTo = addresTo;
    }

    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public Double getCarriage() {
        return carriage;
    }

    public void setCarriage(Double carriage) {
        this.carriage = carriage;
    }

    public Double getAmount() {
        return amount;
    }

    public void setAmount(Double amount) {
        this.amount = amount;
    }

    public String getCarrierId() {
        return carrierId;
    }

    public void setCarrierId(String carrierId) {
        this.carrierId = carrierId;
    }

    public String getCarrierType() {
        return carrierType;
    }

    public void setCarrierType(String carrierType) {
        this.carrierType = carrierType;
    }

    public String getCarrierName() {
        return carrierName;
    }

    public void setCarrierName(String carrierName) {
        this.carrierName = carrierName;
    }

    public String getCarrierMobile() {
        return carrierMobile;
    }

    public void setCarrierMobile(String carrierMobile) {
        this.carrierMobile = carrierMobile;
    }

    public List<OrderbillSimpleVo> getOrderbillSimpleVos() {
        return orderbillSimpleVos;
    }

    public void setOrderbillSimpleVos(List<OrderbillSimpleVo> orderbillSimpleVos) {
        this.orderbillSimpleVos = orderbillSimpleVos;
    }

    public Double getCarriageDeal() {
        return carriageDeal;
    }

    public void setCarriageDeal(Double carriageDeal) {
        this.carriageDeal = carriageDeal;
    }

    public Double getAmountDeal() {
        return amountDeal;
    }

    public void setAmountDeal(Double amountDeal) {
        this.amountDeal = amountDeal;
    }

    public String getContainerType() {
        return containerType;
    }

    public void setContainerType(String containerType) {
        this.containerType = containerType;
    }

    public Double getContainerSize() {
        return containerSize;
    }

    public void setContainerSize(Double containerSize) {
        this.containerSize = containerSize;
    }

    public Date getTakePlanDate() {
        return takePlanDate;
    }

    public void setTakePlanDate(Date takePlanDate) {
        this.takePlanDate = takePlanDate;
    }

    public Date getUnloadPlanDate() {
        return unloadPlanDate;
    }

    public void setUnloadPlanDate(Date unloadPlanDate) {
        this.unloadPlanDate = unloadPlanDate;
    }

    public String getUnloadPlanDateStr() {
        return unloadPlanDateStr;
    }

    public void setUnloadPlanDateStr(String unloadPlanDateStr) {
        this.unloadPlanDateStr = unloadPlanDateStr;
    }

    public String getTakePlanDateStr() {
        return takePlanDateStr;
    }

    public void setTakePlanDateStr(String takePlanDateStr) {
        this.takePlanDateStr = takePlanDateStr;
    }
}
